import 'package:get/get.dart';
import 'package:gluz/app/modules/auth/controllers/auth_base_controller.dart';
import 'package:gluz/app/modules/auth/views/auth_base_view.dart';

import '../../../../utils/toast_util.dart';

class AuthFyController extends GetxController with AuthBaseController {
  @override
  void onInit() {
    super.onInit();
    requestAuthInfo();
  }

  @override
  void onReady() {
    super.onReady();
  }

  @override
  void onClose() {
    super.disposeResources();
    super.onClose();
  }

  bool isFormValid() {
    if (avatarPath.isEmpty) {
      ToastUtil.show('请上传用户头像'.tr);
      return false;
    }
    if (selectedAuthType.value == '个人') {
      if (userPhoneController.text.isEmpty) {
        ToastUtil.show('请输入手机号'.tr);
        return false;
      }
      if (userNameController.text.isEmpty) {
        ToastUtil.show('请输入用户姓名'.tr);
        return false;
      }
      if (userIdNumController.text.isEmpty) {
        ToastUtil.show('请输入身份证号码'.tr);
        return false;
      }
      if (idCardFrontPath.isEmpty) {
        ToastUtil.show('请上传身份证正面'.tr);
        return false;
      }
      if (idCardBackPath.isEmpty) {
        ToastUtil.show('请上传身份证背面'.tr);
        return false;
      }
    } else { // 企业
      if (enterpriseNameController.text.isEmpty) {
        ToastUtil.show('请输入企业名称'.tr);
        return false;
      }
      if (creditCodeController.text.isEmpty) {
        ToastUtil.show('请输入统一社会信用代码'.tr);
        return false;
      }
      if (businessLicensePath.value.isEmpty) {
        ToastUtil.show('请上传营业职照'.tr);
        return false;
      }

      if (legalRepresentativeNameController.text.isEmpty) {
        ToastUtil.show('请输入法人姓名'.tr);
        return false;
      }
      if (legalRepresentativeIdController.text.isEmpty) {
        ToastUtil.show('请输入法人身份证号'.tr);
        return false;
      }
      if (legalIdCardFrontPath.value.isEmpty || legalIdCardBackPath.value.isEmpty) {
        ToastUtil.show('请上传法人身份证'.tr);
        return false;
      }
      if (isManagerSameAsLegal.value == '否') {
        if (idCardFrontPath.value.isEmpty || idCardBackPath.value.isEmpty) {
          ToastUtil.show('请上传管理人身份证'.tr);
          return false;
        }
      }
    }

    if (suozaidi.isEmpty) {
      ToastUtil.show('请选择所在地'.tr);
      return false;
    }

    if (ziyuanhenengliController.text.isEmpty) {
      ToastUtil.show('请输入资源和能力'.tr);
      return false;
    }

    if (languageSelectedList.isEmpty) {
      ToastUtil.show('请选择语言能力'.tr);
      return false;
    }

    if (zhuanyefanweiSelectedList.isEmpty) {
      ToastUtil.show('请选择专业范围'.tr);
      return false;
    }

    if (shoufeibiaozhun.isEmpty) {
      ToastUtil.show('请选择收费标准'.tr);
      return false;
    }

    if (citySelectedList.isEmpty) {
      ToastUtil.show('请选择熟悉城市'.tr);
      return false;
    }

    return true;
  }

  // 提交表单
  @override
  void submitForm() async {
    if (isFormValid() == false) return;
    super.submitForm();
  }
}
